PROTOCOL.txt 7.4c APRS ON-AIR PROTOCOLS and FORMATS COPYRIGHT 1992,93,94,95,96: Amateur radio operators may freely copy and use APRS in the Amateur Radio Service, and should not feel compelled to register. I have tried to make APRS fully capable of RECEIVING and plotting ALL on- the-air packets whether a station is registered or not. I ask for a contribution only to balance the headache factor, and to cover myself against un-licensed commercial exploitation. What you get for registering is the ability to interface your OWN GPS/WX/DF unit and a little convenience in saving configuration files as shown on the F1(help)-V page. These APRS formats are provided for use in the amateur radio service. Anyone is encouraged to apply the APRS formats in the TRANSMISSION of position, weather, and status packets. However, the author reserves the ownership of these protocols for exclusive commercial application and for all reception and plotting applications. APRS is a trademark of Bob Bruninga. Other software engineers desiring to include APRS RECEPTION in their software for sale within or outside of the amateur community will require a license from the author. Also TRANSMISSION of APRS protocols in any NON-AMATEUR commercial application or software will require a license from the author. See COMMERCL.txt All APRS communication is done using UI frames which retain all of the error detection capability of standard packets, but without acknowledgment. In APRS, collisions or lost packets are not a problem since information is redundantly transmitted (AND effeciently! due to the decaying transmission periods). UI packets are the same type that are sent by a TNC using its BEACON and BText commands. NOTE, however, that the APRS UI packets are generated internally in the APRS software and the TNC BText is not used while APRS is running. APRS does use the UNPROTO command of the TNC to tell it what path to use for the transmittion of each packet. But when we refer to the UNPROTO command in APRS, we are refering to the APRS UNPROTO or OPS-UNPROTO command which then in turn issues the hardware UNPROTO commands to the TNC. TO ADDRESS: One caution; since APRS operates in a broadcast fashion and does not use a connected protocol, the TO ADDRESS is not required. To help ignore non-APRS traffic which might also be on the channel, APRS stations use the TO ADDRESS field as a type of filter. APRS will only recognize UI packets transmitted to the broadcast addresses of ID, CQ, QST, BEACON, MAIL, SKYWRN,GPS, DFNET, SPCL, TEST, DRILL and APRS. All other packets are ignored. APRS does have the CONTORLS-OTHER command to over-ride this filter temporarily. There is also a alt-SETUP-MODES-SPECIAL command which turns off all of the above acceptible TO calls and will only accept packets addressed TO: SPCL. Similarly, these stations all transmit using the UNPROTO path of SPCL via XXXX... This makes it easy for a sub-group of APRS users to operate a special event on the same frequency as other APRS users, but to not be encumbered with all of their traffic. APRS FORMATS: The following paragraphs describe the various APRS on-air formats. Abbreviations are D for degrees (or DAY), M for minutes (Both lat/long and time), h for hundredths (or Hours), N for North and W for West. The delimiter following the Longitude is used to indicate the type of APRS symbol to be displayed (shown here as a $). See the SYMBOLS .TXT file. There are three types of time for local, zulu and hhmmss. POSITION REPORT: For a digipeater or permanent TNC, use the FIXED position report. Mobiles will time stamp their position with the DAY,HOUR,MINUTE of the posit. For a home TNC that normally runs APRS, the @ is replaced with a / to show the time of when APRS was last running. If the symbol char is a backslash (\) then APRS assumes the report includes a DF line of bearing for direction finding. To be compatible with TheNET node ID frames, the fixed format (starting with !) can occur anywhere in the BText. FIXED: ... !DDMM.hhN/DDDMM.hhW$comments... (See DIGIS.txt) APRS TNC:/DDHHMM/DDMM.hhN/DDDMM.hhW$comments... MOBILE: @DDHHMM/DDMM.hhN/DDDMM.hhW$CSE/SPD/comments... DF: @DDHHMM/DDMM.hhN/DDDMM.hhW\CSE/SPD/BRG/90Q/Comments ( Q=quality) .......z............................. (indicates Zulu date-time) ......./............................. (indicates LOCAL date-time) .......h............................. (Zulu time in hhmmss) GRDSQR: [XXnnyy]comments to end of line [XXnn]comments to end of line W3AB>FM19SX:Hello there.... (Space/MScat/Grid-SQ mode) POWER: ..........................$PHGabcd... (Power,ant/height/Gain. See) (format below for digi's) OMNI-DF: ..........................\DFSxbcd... (Same as PHG, but x=sig str) TNC: /DDHHMM.............................. (If the leading symbol is a ) (/ instead of an @, then the) (packet is NOT generated by APRS software, but usually by a dumb) (terminal or TNC. The Date-Time indicates when APRS was last on.) RTTY: APRS DE WB4APRx/011427/3859.11'07629.11($ ... This special format uses only the RTTY subset of the ASCII alphabet where ',)( mean N,S,E & W, and the x is an SSID number and the $ is the APRS symbol character. The ... comment field can contain the normal APRS CSE/SPD. The callsign must be padded to six spaces. To enable parsing of this format, use alt-A. POWER-HEIGHT-GAIN: This optional field replaces the CSE/SPD fields with a report of transmitter power, antenna height-above-average-terain and their antenna gain. With this information, APRS can plot communication range circles around all stations. This reporting capability should be an excellent tool for all TNC's not just those used for APRS, such as for BBS's and NODES. The following details the format to be used in the BText of a TNC dedicated as an APRS digipeater: !DDMM.mmN/DDDMM.mmW#PHG5360/WIDE...(identifying comments)... | | | | |||| |_____ makes station show up green | | | | ||||________ Omni (Direction of max gain) | | | | |||_________ Ant gain in dB | | | | ||__________ Height = log2(HAAT/10) LAT LONG | | |___________ Power = SQR(P) | |_____________ Power-Height-Gain identifier * |_______________ # is symbol for digipeater As you can see by the integers in the Pwr string, there are only 10 possible values for each of these fields as follows: DIGITS 0 1 2 3 4 5 6 7 8 9 Equation ------------------------------------------------------------------- POWER 0, 1, 4, 9, 16, 25, 36, 49, 64, 81 watts SQR(P) HEIGHT 10,20,40, 80,160,320,640,1280,2560,5120 feet LOG2(H/10) GAIN 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 dB DIR 0,45,90,135,180,225,270, 315, 360, . deg (D/45) The DIRECTIVITY field offsets the PHG circle by one third in the indicated direction. This means a front to back range of 2 to 1. Most often this is used to indicate a favored direction or a null even though an OMNI antenna is at the site. Note that 0 means OMNI and 8 means 360 or a NORTH offset. THESE HIGHTS are ABOVE-AVERAGE TERRAIN! Not above ground or sea level. Your antenna may be at 1000 ft above sealevel and be on a 100 foot tower. But if you go out 10 miles in all directions and find that the average elevation is 1100 feet, then your height-above-averag-terain is ZERO!!!! OMNI-SIGNAL-STRENGTH DIRECTION FINDING REPORT: Ssince APRS can plot range circles around all stations, it was easy to add the capability to localize hidden transmitters by simply plotting the overlapping signal strength contours of all stations hearing the transmitter. In this instance, the PHG format identifier is replaced with DFS to indicate DF Signal strength, and the transmitter power field is replaced with the relative signal strength on an arbitrary scale of 0 to 9. The following beacon would represent a weak signal heard on an antenna with 3 dB gain at 40 feet: @141923/3859,11N/07629.23W\DFS2230/comments Although the backslash (DF) station symbol was used, this report will work no matter what the station symbol. A report with a signal of ZERO (0), is SIGNIFICANT beacuse APRS uses these 0 signal reports to draw BLACK circles where the transmitter is KNOWN NOT to be. These BLACK circles where the transmitter IS NOT are actually VERY useful, since many more people will NOT hear the fox than will. The black circles will eliminate a lot of territority where the fox is NOT. WEATHER REPORT: APRS uses the underline symbol character for WX reports. For these, the COURSE/SPEED field is used for WIND direction and speed. The remainder of the comment line can contain any other weather items. See WX.TXT for details on the specific format of the optional automatic Home weather station interface for the Ultimeter-II. @DDHHMM/DDMM.hhN/DDDMM.hhW_CSE/SPD/T073/R00h/WxStn (auto) Dxxx/Pxxh/Bxxx other optional fields for DewPt, Participation accumulation, and BaroPressure The R field is tenths of an inch of rain in the LAST HOUR The P field is tenths of an inch of rain in the LAST 24 HOURS (if hundredths are available, an optional 3rd digit may be added) An S filed is INCHES of snow in the last 24 hours The (auto) indicates the report is automatic and therefore current. OBJECT POSITION: To report the position of something other than your own station, the same format for a mobile object is used but it is preceeded with a nine digit object name. For shorter names, the 9 character field must be padded with spaces: OBJECT___*DDHHMM/DDMM.hhN/DDDMM.hhW$CSE/SPD/comments... ALL OTHER PACKETS: Any packet that does NOT meet any of the above formats is assumed to be just a status beacon and is placed on the LATEST list. APRS automatically places the date-time at the beginning of such packets so the receiver will know when that status or beacon was sent. @DDHHMM/comments... MESSAGE: To direct a specific message to a specific station and have his bell ring and the message instantly flashed on his screen, use the following format, again padding the addressee call with spaces to a total of nine characters followed by a colon: W3XYZ____:one line message text......{3 (the {3 is the line counter) His station will acknowledge receipt with a responding message to you with only the letters ACK3 in the message. MSG ACK: If an APRS station sends you a message line, it will be repeated over and over until you send a responding ack. To send an ack to station W3XYZ, simply enter his call padded to nine spaces and a colon followed by the letters ACK# where the # is the line number tacked onto the end of his message line with a ({). W3XYZ____:ack3 BULLETINS: Each station can also send a multiple line BULLETIN to ALL stations by simply sending multiple single line messages to the special call signs of BLN1, BLN2, ... BLN#. All APRS stations collect all such BLN# messages and sort them onto the special BULLETINS page. They are also sorted by originators call, so that many stations can have BULLETINS flying at the same time. You may change any BLN# line at anytime, and all receiving stations will simply over-write the line with the latest line. Bulletins sent BLN# will decay to very long periods but bulletins sent to BLNx will decay down to once every 15 minutes and stay at that rate. APRS QUERIES: APRS responds to several general queries: ?APRS? - All stations respond with all outgoing status, posits, OBJs and messages randomly over 2 minutes (4 on HF) ?APRS?LLLLLL,OOOOOO,RRRR - Only stations within RRRR miles of the LLLLLL Latitude and OOOOOO Longitude respond. If RRRR is less than 8 (64 on HF) then respond immediately ?WX? - All WX stations respond MYCALL...:?APRS? - Only the station MYCALL responds immediately DF REPORTS: The DF report includes a N0Q field in addition to the position, course and speed of the vehicle plus the bearing line. @DDHHMM.xxN/DDDMM.xxW\CSE/SPD/BRG/N0Q/DF report... N0Q is a Quality indicator where Q is a quality value (1-8) amd N is an optional Number of HITS indicator. If N is 0, then it means nothing. Values from 1 to 8 give an indication of the number of hits per period relative to the length of the time period. So 8 means 100% of all samples possible, got a hit. The N is not processed, but is just another indicator from the automatic DF units. By entering a 9 as the HIT indicator, you can indicate to other users that your report is manual. DIGIPEATERS, NODES, BBS's AND ALL OTHER PACKET STATIONS: Since APRS is a generalized position displaying tool, EVERY Packet TNC that is permanently on the air, and that also transmits a periodic ID beacon, should be reporting its position in that ID beacon! This way, stations monitoring can quickly see a geographical plot of the network. If you want to keep the exact location of your transmitter ambiguous, then use the GRID-SQUARE format, and your position will be ambiguous to a few miles, but stations can still see that you are on the air. If you have special formats for your BEACONS that contain variable information, then APRS is perfect for grabbing that information and making it available to users... If you have any uused aliases, set them to RELAY so others can find you.